﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using ForrajeriaDAL; //Estos Using Van siempre en esta capa
using ForrajeriaDB; //Estos Using Van siempre en esta capa


namespace ForrajeriaBCL
{
    public class MarcaBCL : InterfaceBCL<MarcaMO>
    {
        private MarcaDAL marcaDAL;
        public MarcaBCL()
        {
            marcaDAL = MarcaDAL.getInstance;
        }//Llamando al Singleton

        public List<MarcaMO> GetAll()
        {
            return marcaDAL.GetAll();
        }

        public string Adicionar(MarcaMO item)
        {
            try
            {
                marcaDAL.Adicionar(item);
                return "1";
            }
            catch (Exception ex)
            {
                return "Error de escritura...";
            }

        }

        public string Eliminar(MarcaMO item)
        {
            try
            {
                marcaDAL.Eliminar(item);
                return "1";
            }
            catch (Exception ex)
            {

                if (ex.Message.ToString().Contains("conflicto con la restricción REFERENCE")) //si esta subcadena es encontrada quiere decir q hay una RESTRICCION DE CLAVE FORANEA EN RELACION A ESA TUPLA! 
                    return "No es Posible eliminar ya que Existen dependencias Con otras tablas de la base de datos!";
                else
                    return "Error al Intentar Eliminar";
            }
        }

        public string Actualizar(MarcaMO itemNuevo, MarcaMO itemViejo)
        {
            try
            {
                marcaDAL.Actualizar(itemNuevo, itemViejo);
                return "1";
            }
            catch (Exception ex)
            {
                return "Error de escritura...";
            }

        }

        
    }
}
